package com.lexton.util;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 字符串处理工具类
 * @author Jimmy
 */
public class StringUtil {
	/**
	 * 提取字符串中的汉子
	 */
	public static String pickChinese(String s) {
		Pattern reg = Pattern.compile("[\\u4e00-\\u9fa5]");
		return StringUtil.pick(reg, s);
	}
	
	/**
	 * 提取字符串中的数字
	 * @return
	 */
	public static Double pickFigure(String s) {
		Pattern reg = Pattern.compile("[0-9]|\\.");
		String str = StringUtil.pick(reg, s);
		if ("".equals(str)||".".equals(str)) str = "0";
		return Double.valueOf(str);
	}
	
	/**
	 * 提取字符串中的字母
	 */
	public static String pickLetter(String s) {
		Pattern reg = Pattern.compile("[a-z||A-Z]");
		return StringUtil.pick(reg, s);
	}
	
	/**
	 * 根据正则表达式从字符串中提取内容
	 */
	public static String pick(Pattern p,String str) {
		StringBuilder sb = new StringBuilder();
		Matcher m = p.matcher(str);
		while (m.find())
		for (int i = 0; i <= m.groupCount(); i++) {
			sb.append(m.group());
		}
		return sb.toString();
	}
	
	public static void main(String[] args) {
		System.out.println(StringUtil.pickFigure("L3.41"));
	}
	
	
}
